﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sisocana.Core.Models;
using System.Linq.Expressions;

namespace Sisocana.Core.Interfaces
{
    public interface IFuenteService : IService<FuenteModel>
    {
        //Redes Sociales
        int addRedesSociales(RedesSocialesModel rs);
        int updateRedesSociales(RedesSocialesModel rs);
        int deleteRedesSociales(RedesSocialesModel rs);
        RedesSocialesModel getSigleRedesSociales(Expression<Func<RedesSocialesModel, bool>> whereCondition);
        IList<RedesSocialesModel> GetAllRedesSociales();

        //Video
        int addVideo(VideoModel video);
        int updateVideo(VideoModel rs);
        int deleteVideo(VideoModel rs);
        VideoModel getSigleVideo(Expression<Func<VideoModel, bool>> whereCondition);
        IList<VideoModel> GetAllVideo();

        //Imagenes
        int addImage(ImagenModel img);
        int updateImage(ImagenModel rs);
        int deleteImage(ImagenModel rs);
        ImagenModel getSigleImagen(Expression<Func<ImagenModel, bool>> whereCondition);
        IList<ImagenModel> GetAllImagenes();

        //Noticias
        //Imagenes
        int addNoticia(NoticiaModel img);
        int updateNoticia(NoticiaModel rs);
        int deleteNoticia(NoticiaModel rs);
        NoticiaModel getSigleNoticia(Expression<Func<NoticiaModel, bool>> whereCondition);
        IList<NoticiaModel> GetAllNoticia();

    }
}
